home *** CD-ROM | disk | FTP | other *** search
/ Mac Easy 2010 May / Mac Life Ubuntu.iso / casper / filesystem.squashfs / usr / src / linux-headers-2.6.28-15 / include / linux / leds-pca9532.h < prev    next >
Encoding:
C/C++ Source or Header  |  2008-12-24  |  959 b   |  46 lines

  1. /*
  2.  * pca9532.h - platform data structure for pca9532 led controller
  3.  *
  4.  * Copyright (C) 2008 Riku Voipio <riku.voipio@movial.fi>
  5.  *
  6.  * This program is free software; you can redistribute it and/or modify
  7.  * it under the terms of the GNU General Public License as published by
  8.  * the Free Software Foundation; version 2 of the License.
  9.  *
  10.  * Datasheet: http://www.nxp.com/acrobat/datasheets/PCA9532_3.pdf
  11.  *
  12.  */
  13.  
  14. #ifndef __LINUX_PCA9532_H
  15. #define __LINUX_PCA9532_H
  16.  
  17. #include <linux/leds.h>
  18.  
  19. enum pca9532_state {
  20.     PCA9532_OFF  = 0x0,
  21.     PCA9532_ON   = 0x1,
  22.     PCA9532_PWM0 = 0x2,
  23.     PCA9532_PWM1 = 0x3
  24. };
  25.  
  26. enum pca9532_type { PCA9532_TYPE_NONE, PCA9532_TYPE_LED,
  27.     PCA9532_TYPE_N2100_BEEP };
  28.  
  29. struct pca9532_led {
  30.     u8 id;
  31.     struct i2c_client *client;
  32.     char *name;
  33.     struct led_classdev ldev;
  34.     enum pca9532_type type;
  35.     enum pca9532_state state;
  36. };
  37.  
  38. struct pca9532_platform_data {
  39.     struct pca9532_led leds[16];
  40.     u8 pwm[2];
  41.     u8 psc[2];
  42. };
  43.  
  44. #endif /* __LINUX_PCA9532_H */
  45.  
  46.